With developments of computer and network technologies, online services now provide great support in every aspect of people's life. In many industries, more and more service providers begin to provide online services via Web applications in their websites, and thus users can access to these online services via network instead of visiting the providers' offices personally.
The online services cover multiple aspect of the service provider and are usually supported by different Web application. For example, for a telecommunication provider, there may be separate Web applications for user management, credit management and the like. Although these Web applications are integrated into one website, these Web applications are usually developed by different software companies and possibly written in different programming languages. For example, the Web application for user management on Server A is written in Java™ by Company A, and the Web application for credit management on Server B is written in C++ by Company B. As both of these Web applications follow the business logic in the telecommunication company, these Web applications are possibly dependent if common business logic is shared between these Web applications. When the common business logic changes, additional time and effort are required for the engineers in each of Companies A and B so as to modify the code in each Web applications.